草庐IT

UI线程上的Android Junit4测试

全部标签

ruby-on-rails - 将模型上的所有方法调用委托(delegate)给关联

我有一个具有多态关联的ActiveRecord模型,如下所示:classReachtrueend这个模型就像一个代理。我需要做的是将对该对象的所有方法调用转发给关联的对象:reachable。我认为delegate在这里无济于事,因为我必须明确命名我需要委托(delegate)的所有方法。我需要像delegate:all这样的东西来委托(delegate)所有方法(不是all方法)。 最佳答案 从Rails5.1+开始,您可以委托(delegate)所有未使用delegate_missing_to:reachable实现的内容基本上

ruby-on-rails - 向现有 Rails 项目添加测试的最佳方式?

我有一个Rails项目,我忽略了为其构建测试(很遗憾!),并且代码库已经变得相当大。我的一个friend说RSpec很难用,除非你从一开始就使用它。这是真的?是什么让他这么说?那么,考虑到可用的测试套件和代码库已经存在的事实,让这个东西可测试的最佳行动方案是什么?这真的与从头开始做有很大不同吗? 最佳答案 这个问题cameuprecently在RSpec邮件列表上,我们通常给出的建议是:除非您打算更改它,否则不要费心尝试将规范改造为现有的、有效的代码-这会让人筋疲力尽,而且除非代码需要更改,否则毫无意义。从现在起开始为您所做的任何更

ruby - Regexp.last_match 线程安全吗?

这是我正在查看的代码:defmethod_missing(id,*args)returnself.find(Regexp.last_match(1),args[0])ifid.id2name=~/find_by_(.+)/raiseNoMethodErrorend如果我有多个线程调用Regexp.last_match会怎样?如果我有多个线程使用method_missing方法调用对象会怎样? 最佳答案 Ruby1.9.2平台文档声明调用Regexp.last_match等同于读取特殊的$~全局变量。摘自“TheRubyProgram

ruby-on-rails - 如何一次运行多个 Rails 单元测试

我经常运行各种测试组,例如:raketest:unitsraketest:functionals我也喜欢运行单独的测试文件或单独的测试:ruby-Itesttest/unit/file_test.rbruby-Itesttest/unit/file_test.rb-n'/somecontextImworkingon/'还有:raketestTEST=test/unit/file_test.rb我什至在我的Rakefile中创建了自定义分组:Rake::TestTask.new(:ps3)do|t|t.libs我还没有弄清楚的是如何在命令行运行多个临时测试。换句话说,如何将test_fi

ruby - 如何在 RSPEC 中测试类方法

我编写了一个简单的类方法Buy.get_days(string),并尝试使用不同的文本字符串输入对其进行测试。但是我觉得它非常冗长。是否有更简洁的方法来测试以下内容?有没有相当于subjectformethods我可以继续传递输入不同的参数并检查结果?有没有办法避免在每个它处进行不必要的描述?谢谢describeBuydodescribe'.get_days'doit'shouldgetdays'doBuy.get_days('Includesa1-weeknightstayforupto4people').should==1endit'shouldgetdays'doBuy.get_

ruby - 如何测试 capybara 中是否存在提交按钮?

我想在rspec中测试是否存在提交按钮。我也在用capybara。我试过:shouldhave_tag("input","Submitbutton")和shouldhave_content("Submit,button")但它要么引发异常,要么给出误报。 最佳答案 这些都是很好的建议,但是如果你想确认它是一个按钮并且它有正确的值(用于显示),你必须更详细一点:page.shouldhave_selector("input[type=submit][value='PressMe']")我不知道现有的匹配器可以做到这一点。这是我编写的自

ruby-on-rails - Heroku 上的 Rails 4.0.1,无法创建数据库

我无法让rakedb:migrate在Heroku上的Rails4.0.1应用程序上运行。我猜我没有正确配置postgres...但是阅读heroku上的文档并没有真正帮助,我不确定该怎么做。我不太了解heroku或postgres。任何帮助或资源将不胜感激。让我知道是否还有其他我可以发布的内容。(此外,如果重要的话,我正在使用设计)当我运行herokurunrakedb:migrate时,我得到了这个:Running`rakedb:migrate`attachedtoterminal...up,run.5077PG::UndefinedTable:ERROR:relation"use

ruby-on-rails - Ruby 测试覆盖率工具

我需要一个工具来测量Ruby下的测试覆盖率。我试过rcov,但无法在Windows、Cygwin或Ubuntu下安装它。哪些程序(不一定免费)计算Ruby测试的分支和/或行覆盖率并与RubyonRails一起工作? 最佳答案 Simplecov.Rcov在Ruby1.9.*下工作得不是很好,但simplecov可以。 关于ruby-on-rails-Ruby测试覆盖率工具,我们在StackOverflow上找到一个类似的问题: https://stackove

ruby-on-rails - Ruby/Rails 线程安全

我时常研究Ruby,但我没有用它做过任何大的或多线程的事情。我听说MRI只支持绿色线程,而JRuby通过JVM支持native线程。然而,我偶然发现博客和讨论组上的评论说“Rails不是线程安全的”或者Ruby本身不是线程安全的。例如有人评论说require语句有问题。这听起来有点基础。我见过很多不能正确处理并发的Java应用程序,我时不时地做噩梦:-)但至少你可以用Java编写线程安全的应用程序如果您真的知道自己在做什么(这并不容易)。这一切听起来很令人震惊,有人可以详细说明一下吗?到底是什么问题,如果是这种情况,Rails是如何设法工作的?我可以编写在没有竞争条件和死锁的情况下正常

ruby - 我怎样才能对我的默认范围进行 rspec 测试

我的模型有default_scope(:order=>'created_at')我的测试(rspec、factorygirl、shoulda等)是:require'spec/spec_helper.rb'describeCatMembershipdocontext"isvalid"dosubject{Factory.build(:cat_membership)}it{shouldbe_valid}it{shouldbelong_to:cat}it{shouldbelong_to:cat_group}it{shouldhave_db_column(:start_date)}it{shou